package java学习.第12章_集合框架;

import org.junit.Test;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Hashtable;
import java.util.Map;
import java.util.Properties;

public class C3_Hashtable {

    @Test
    public void HashtableDemo() {
        Map map = new Hashtable(10, 0.75f);
        //扩容机制 ：initialCapacity>>1+1
        //Hashtable采用头插法的方式迁移数组
        //负载因子默认0.75      默认大小11
    }

    @Test
    public void Properties常用来处理配置文件() {
        Properties properties = new Properties();
        //Hashtable的子类 常用来处理配置文件   key-value都是String
        File file = new File("file/jyjk.properties");
        System.out.println(file.getAbsoluteFile());
        try (FileInputStream fis = new FileInputStream(file)) {//自动关闭 流

            properties.load(fis);//加载对应的文件
            //如果有中文  可能有乱码 File->Settings->Editor->File Encodings->
            //Properties Files (*. properties)
            //Default encoding for properties files: UTF-8 √ Transparent native -to-asci conversion
            //要勾上  这个时专门搞properties配置文件的  而且要删了重新搞  否则他之前加载过
            String name = properties.getProperty("name");
            String age = properties.getProperty("age");
            System.out.println(name);
            System.out.println(age);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
